#ifndef CORE_GLRENDERER_H
#define CORE_GLRENDERER_H

#include <cstdio>
#include <string>
#include "Common/Common.h"
#include "Drawing/Color.h"

#include "Size.h"
#include "Texture.h"
#include "TextureIdPool.h"

namespace core {

	class Renderer {
	private:
		static cmn::Store<std::string, const Texture*> m_textureStore;

	public:
		static cmn::Store<std::string, const Texture*> GetTextureStore();


//ToDo: Add .obj model import

		static void DrawTexture( const Texture* texture, const cmn::Transform& transform, float width, float height );
		static void DrawTexture( const Texture* texture, const cmn::Vec3& center, float width, float height );
		static void DrawTexture( const Texture* texture, const cmn::Vec3& center, float angle, float width, float height );
	};
}
#endif
